package com.cskaoyan.bean.baseresultVO;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

/**
 * @author stone
 * @date 2021/11/29 15:14
 * 基础返回Vo
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
@Data
public class BaseRespVo<T>{
    T data;
    String errmsg;
    Integer errno;

    public static <T> BaseRespVo ok(T data) {
        BaseRespVo baseRespVo = new BaseRespVo();
        baseRespVo.setData(data);
        baseRespVo.setErrmsg("成功");
        baseRespVo.setErrno(0);
        return baseRespVo;
    }

    public static <T> BaseRespVo ok() {
        BaseRespVo baseRespVo = new BaseRespVo();
        
        baseRespVo.setErrmsg("成功");
        baseRespVo.setErrno(0);
        return baseRespVo;
    }

    public static <T> BaseRespVo error(T data) {
        BaseRespVo baseRespVo = new BaseRespVo();
        baseRespVo.setData(data);
        baseRespVo.setErrmsg("请求失败");
        baseRespVo.setErrno(500);
        return baseRespVo;
    }

    public static BaseRespVo error() {
        BaseRespVo baseRespVo = new BaseRespVo();
        baseRespVo.setData(null);
        baseRespVo.setErrmsg("请求失败");
        baseRespVo.setErrno(500);
        return baseRespVo;
    }

    public static BaseRespVo buok(Integer i) {

        BaseRespVo baseRespVo = new BaseRespVo();
        baseRespVo.setData(null);
        baseRespVo.setErrmsg("操作失败");
        baseRespVo.setErrno(i);
        return baseRespVo;
    }


    public static BaseRespVo error(Integer errno , String errmsg) {
        BaseRespVo baseRespVo = new BaseRespVo();
        baseRespVo.setErrmsg(errmsg);
        baseRespVo.setErrno(errno);
        return baseRespVo;
    }
}
